package es.ats.codington.festival.domain;

/**
 * The Class Place.
 *
 * @author 5Cs
 */
public abstract class Place {

	//Properties
	/** The i d. */
	private int iD;
	
	/** The place name. */
	private String placeName;
	
	/** The capacity. */
	private int capacity;
	
	/** The place description. */
	private String placeDescription;
    
    /**
     * The Enum Zone.
     */
    public enum  Zone {
/** The north. */
north, 
 /** The south. */
 south};
	
	/** The zone. */
	private Zone zone;
    
    /**
     * The Enum Real.
     */
    public enum  Real {
/** The zoo. */
zoo, 
 /** The touristattraction. */
 touristattraction, 
 /** The park. */
 park, 
 /** The traditionalmarket. */
 traditionalmarket, 
 /** The theater. */
 theater, 
 /** The stadium. */
 stadium, 
 /** The museum. */
 museum, 
 /** The busines. */
 busines};
	
	/** The real. */
	private Real real;
	
	//Constructors
	/**
	 * Instantiates a new place.
	 */
	public Place() {
		// TODO Auto-generated constructor stub		
	}
	
	/**
	 * With parameters.
	 *
	 * @param name the name
	 * @param capacity the capacity
	 * @param placeDesc the place desc
	 * @param zone the zone
	 * @param real the real
	 */
	public Place(String name, int capacity, String placeDesc, Zone zone, Real real){
		super();
		this.placeName = name;
		this.capacity = capacity;
		this.placeDescription = placeDesc;
		this.zone = zone;
		this.real = real;
	}
	
	
	//Getters	
	/**
	 * Gets the place name.
	 *
	 * @return the place name
	 */
	public String getPlaceName() {
		return placeName;
	}

	/**
	 * Gets the capacity.
	 *
	 * @return the capacity
	 */
	public int getCapacity() {
		return capacity;
	}
	
	/**
	 * Gets the place description.
	 *
	 * @return the place description
	 */
	public String getPlaceDescription() {
		return placeDescription;
	}
	
	/**
	 * Gets the zone.
	 *
	 * @return the zone
	 */
	public Zone getZone() {
		return zone;
	}

	/**
	 * Gets the i d.
	 *
	 * @return the i d
	 */
	public int getiD() {
		return iD;
	}
	
	
	//Setters

	/**
	 * Sets the place name.
	 *
	 * @param placeName the new place name
	 */
	public void setPlaceName(String placeName) {
		this.placeName = placeName;
	}
	
	/**
	 * Sets the capacity.
	 *
	 * @param capacity the new capacity
	 */
	public void setCapacity(int capacity) {
		this.capacity = capacity;
	}

	/**
	 * Sets the place description.
	 *
	 * @param placeDescription the new place description
	 */
	public void setPlaceDescription(String placeDescription) {
		this.placeDescription = placeDescription;
	}

	/**
	 * Sets the zone.
	 *
	 * @param zone the new zone
	 */
	public void setZone(Zone zone) {
		this.zone = zone;
	}

	
	/**
	 * Gets the real.
	 *
	 * @return the real
	 */
	public Real getReal() {
		return real;
	}
  
	/**
	 * Sets the real.
	 *
	 * @param real the new real
	 */
	public void setReal(Real real) {
		this.real = real;
	}
	
}
